package mil.af.amc.adpetracker.dao;

import mil.af.amc.adpetracker.model.Account;

/**
 * Interface for the AccountDao
 * 
 *
 * @author TSgt Jason Ferguson
 */

public interface AccountDao extends GenericDao<Account> {

    /**
     * Return an account by its username. This method is used by any Service class implementing the
     * Spring Security UserDetails interface.
     *
     * If this method returns null, it is required that the Service class throw a UsernameNotFoundException
     * or anarchy may occur.
     *
     * @param username  a String representing the (unique) username of the Account to return
     * @return  an Account, or null
     */
    Account getByUsername(String username);
    
}
